1. Field of the Invention
This invention relates to a routeless guiding method for moving bodies such as a working robot, carrier vehicle and the like, particularly a moving body such as the so-called two-wheel independent type moving robot having driving wheels used commonly for traveling and steering by driving right and left wheels independently without designating a route to the destination.
2. Description of Related Art
A moving body such as a working robot or a carrier vehicle for carrying materials and the like which controls traveling speed and steering by arranging driving wheels capable of being driven independently at right and left sides respectively and controlling the respective rotational speeds of the driving wheels, is already put to practical use. In such a moving body, guiding to a target position and controlling of the direction to the target position are carried out by controlling the rotational speeds of the right and left driving wheels according to the following equation (1). EQU u.sub.r,l =k.sub.y e.sub.y .+-.k.sub.c (e.sub.c -k.sub.x e.sub.x). . . (1)
Here,
u.sub.r :right motor speed command value PA1 u.sub.l :left motor speed command value PA1 k.sub.y : traveling direction gain PA1 k.sub.c : azimuth gain PA1 k.sub.x : lateral direction gain PA1 e.sub.y : traveling direction deviation PA1 e.sub.c : turning direction deviation PA1 e.sub.x : lateral direction deviation
FIG. 1 is a schematic diagram showing an example in which the above-mentioned equation is applied. In FIG. 1, the reference symbol 1 designates a moving body. This moving body 1, as mentioned before, has independent driving wheels RW and LW at the right and left sides. The central position designated by a black point indicates the present position PP of the moving body 1. The target position TP of the moving body 1 is shown as an origin of x-y orthogonal coordinate, which represents a generally planar horizontal surface and the desired designated direction of the moving body 1 at the target position TP is the forward direction of y axis, as shown by an arrow DD. In FIG. 1, reference character e.sub.d shows a positional deviation (distance in a straight line) between the present position PP of the moving body 1 and the target position TP.
In the example shown in FIG. 1, the moving body 1 is guided to a dummy target position DTP according to equation (1). But when the value of k.sub.x e.sub.x in the equation (1) exceeds .pi./2, the body cannot arrive at the target position TP. Therefore it is necessary that many intermediate points be set on the preset route and that a follow-up control system is configured to give these intermediate points as momentary target positions. In other words, it is necessary to preset a traveling route of the moving body 1.
Accordingly, when the moving body 1 is moved between n points, it is possible to set nX(n-1) routes and it is necessary to describe all of these routes in a program. And when the number of the intermediate points of each route is m, each route is separated into (m+1) sections, and each section is indicated by the coordinates of two points at the both ends of the section. Accordingly, it is necessary to preset all of these coordinates to describe a program.
The traveling route set in the above-mentioned case is guided to coincide with the direction DD in which the traveling direction of the moving body 1 is preset when it reaches the target position TP. This is done by setting a combination of straight lines and circular arcs through an operator's hand. The body also can be guided to coincide with the desired travel direction DD of the moving body 1 at the target position TP, by generating spline curves which smoothly connect the starting point and target position TP of the moving body 1 by a control unit mounted on the moving body 1 itself.
But follow-up control, by a user program for setting the traveling route of a combination of straight lines and circular arcs through an operator's hand is complicated, and the program workload is enormous. And there is also a problem that the load of a CPU is very large to calculate spline curves when the moving body 1 calculates spline curves by a control circuit of the moving body 1 itself to travel.